iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 2
1

Nova

Nova 是 OpenStack 專案之一,提供配置Instance (也叫做虛擬服務器),Nova 提供建立虛擬機器,baremetal 的服務(透過 Ironic 使用),現在也開始支援容器(containers)。

OpenStack Nova 服務由下列元件所構成:

nova-api :Nova 對外提供的 RESTful API 服務

nova-api-metadata:是 nova-api 的子服務,是 metadata 的提供者,Instance 可以通過 nova-api-metadata 的 RESTful API 來獲得 meatdata 訊息

nova-compute:一個持續執行的 daemon,透過Hypervior 的 API 來建立與刪除虛擬機 Instance

nova-scheduler service:取得 VM instance 的需求後,根據制定的規則以及資源目前情況,決定要讓 VM 在哪一台實體主機啟動。

nova-conductor:nova-compute 需要獲取和更新資料庫中 instance 的信息。 但 nova-compute 並不會直接訪問資料庫,而是通過 nova-conductor 實現數據的訪問

nova-cert:管理 X509 證書

Nova 架構

Glance

Glance 是 OpenStack 映像檔服務,提供 Instance 儲存、查詢映像檔,OpenStack 在啟動 Instance 部署時會使用到此套件

Disk 格式

  • raw
  • vhd
  • vhdx
  • vmdk
  • vdi
  • iso
  • ploop
  • qcow2
  • aki
  • ari
  • ami

Openstack glance 元件

glance-api:接收其他元件呼叫,如:存取、搜尋等等

glance-registry:存取 image 的 metadata

Database:存放 imgae matadate 資訊

Image 的 Storage Repository:支援多種的Repository,如:NFS、swift 等等

Ironic

提供裸機服務,可以獨立使用或作為 Openstack 一部分使用,當裸機適當配置 compute 和 network 服務,可以透過 compute API 配置虛擬機與裸機。裸機服務無法提供 live migration 服務

Ironic 部署架構圖

  1. cloud administrator 註冊裸機屬性 ex: MAC 址或 IPMI 資訊,透過 RESTful API 註冊至 Ironic Conductor
  2. Ironic conductor 大的工作,基於安全性考量,建議將服務放置在獨立的主機中,因為他是唯一需要訪問 data plan 和 IPMI control plan 的服務
  3. conductor 可以服務多個 Instance,支持各種驅動以及故障點轉移,每個 conductor 可以運行許多驅動,運行異構硬體

Ironic 有以下兩種使用模式

  1. 和 Nova 服務一起,作為 Nova 的一個 virtDriver 來使用,Nova 把裸機當作虛擬機對待,能夠利用 Nova 服務中的多租戶、調度、配額管理等功能,構成真正的裸機雲
  2. Standalong 單獨使用模式,沒有多租戶,沒有調度,沒有配額管理等功能,更多的是一種裸機的雲部署工具

驅動的啟動、部署和電源管理方式

驅動 啟動 部署 電源管理
agent_amt PXE Agent AMT
agent_iboot PXE Agent IBoot
agent_ilo IloVirtualMedia Agent Ilo
agent_ipmitool PXE Agent IPMI
agent_irmc IRMCVirtualMedia Agent IRMC
agent_pxe_oneview PXE Agent OneView
agent_pyghmi PXE Agent IPMI
agent_ssh PXE Agent SSH
agent_vbox PXE Agent VirtualBox
agent_ucs PXE Agent UCS
agent_wol PXE Agent WakeOnLan
iscsi_ilo IloVirtualMedia ISCSI Ilo
iscsi_irmc IRMCVirtualMedia ISCSI IRMC
iscsi_pxe_oneview PXE ISCSI OneView
pxe_ipmitool PXE ISCSI IPMI
pxe_ipminative PXE ISCSI IPMI
pxe_ssh PXE ISCSI SSH
pxe_vbox PXE ISCSI VirtualBox
pxe_seamicro PXE ISCSI seamicro
pxe_iboot PXE ISCSI IBoot
pxe_ilo PXE ISCSI Ilo
pxe_drac PXE ISCSI Drac
pxe_snmp PXE ISCSI SNMP
pxe_irmc PXE ISCSI IRMC
pxe_amt PXE ISCSI AMT
pxe_msftocs PXE ISCSI MSFTOCS
pxe_ucs PXE ISCSI UCS
pxe_wol PXE ISCSI WakeOnLan
pxe_iscsi_cimc PXE ISCSI Cim_power
pxe_agent_cimc PXE Agent Cim_power

參考資料:

https://www.openstack.org/
https://github.com/OSE-Lab/openstack-ubuntu
https://read01.com/DA7jza.html


上一篇
OpenStack 介紹
下一篇
OpenStack 套件介紹
系列文
基於雲端Iaas基礎平台OpenStack結合Kubernetes,BlockChain,Spark,SDN24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言